perm filename MET21.LSP[TIM,LSP] blob sn#717368 filedate 1983-06-26 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	(declare 
C00004 ENDMK
C⊗;
(declare 
 (fasload meter)
 (load "metint.lsp")
 (setq meter:count-only T))
(declare 
 (setq local-objects-of-interest  '((tak1 "Calls to TAK1")
				    (*catch "Catches")
				    (*throw "Throws"))))
(declare 
 (fixnum (tak fixnum fixnum fixnum)))

(meter:meter ctak
 (meter-funs #.(all-objs)
	     (defun tak (x y z)
		    (*catch 'tak (tak1 x y z)))

	     (defun tak1 (x y z)
		    (cond ((not (< y x))	;x≤y
			   (*throw 'tak z))
			  (t (tak1
			      (*catch 'tak
				      (tak1 (1- x)
					    y
					    z))
			      (*catch 'tak
				      (tak1 (1- y)
					    z
					    x))
			      (*catch 'tak
				      (tak1 (1- z)
					    x
					    y))))))))